package com.gas.project.gas.grade.service;

import java.util.List;

import com.gas.project.gas.grade.domain.CourseGrade;
import com.gas.project.gas.grade.domain.CourseValidGrade;

/**
 * 课程成绩Service接口
 *
 * @author xyl
 * @date 2022-04-03
 */
public interface ICourseGradeService {
    /**
     * 查询课程成绩
     *
     * @param courseGradeId 课程成绩ID
     * @return 课程成绩
     */
    public CourseGrade selectCourseGradeById(Long courseGradeId);

    /**
     * 查询课程成绩列表
     *
     * @param courseGrade 课程成绩
     * @return 课程成绩集合
     */
    public List<CourseGrade> selectCourseGradeList(CourseGrade courseGrade);

    /**
     * 新增课程成绩
     *
     * @param courseGrade 课程成绩
     * @return 结果
     */
    public int insertCourseGrade(CourseGrade courseGrade);

    /**
     * 修改课程成绩
     *
     * @param courseGrade 课程成绩
     * @return 结果
     */
    public int updateCourseGrade(CourseGrade courseGrade);

    /**
     * 批量删除课程成绩
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteCourseGradeByIds(String ids);

    /**
     * 删除课程成绩信息
     *
     * @param courseGradeId 课程成绩ID
     * @return 结果
     */
    public int deleteCourseGradeById(Long courseGradeId);

    /**
     * 导入课程成绩
     * @param courseGradeList
     * @return
     */
    String importTeacher(List<CourseGrade> courseGradeList);


    /**
     * 查询有效成绩
     * @param courseGrade
     * @return
     */
    List<CourseValidGrade> selectValidGradeList(CourseValidGrade courseGrade);

    /**
     * 查询汇总，首页弹出
     * @return
     */
    CourseValidGrade selectValidGradeCollect(CourseValidGrade courseGrade);
}
